package com.abc.recycling.service;

import com.abc.recycling.model.RecyclingStation;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import java.util.List;

public interface RecyclingStationService {
    /**
     * 根据关键字搜索回收站
     */
    List<RecyclingStation> findStations(String keyword);

    /**
     * 根据ID获取回收站
     */
    RecyclingStation findById(Long id);

    /**
     * 创建回收站
     */
    void create(RecyclingStation station);

    /**
     * 更新回收站信息
     */
    void update(RecyclingStation station);

    /**
     * 更新回收站状态
     */
    void updateStatus(Long id, Integer status);

    /**
     * 删除回收站
     */
    void delete(Long id);

    /**
     * 分页搜索回收站
     */
    Page<RecyclingStation> searchStations(String keyword, Pageable pageable);

    /**
     * 查找附近的回收站
     */
    List<RecyclingStation> findNearbyStations(Double latitude, Double longitude, Integer radius);

    Page<RecyclingStation> findAll(Pageable pageable);
    List<RecyclingStation> getNearbyStations(Double latitude, Double longitude, Integer radius);
} 